//Will Zepeda
//GSP-362
//PU_Rotate.h
//class used to execute Rotate Tile power-up
#pragma once
#include "PowerUp.h"

class Controller;
class Board;
class Tile;


//changes material of tiles that can be rotated to green
//cursor tile's material is yellow to indicate it is the selector
//<SPACE> to select tile to rotate
//

class PU_Rotate : public PowerUp
{
private:
	Controller*		mpController;
	Board*			mpBoard;
	Tile*			mpResetTile;
	bool			mTileSelected;
	bool			mExecuted;

private:	//functions
	void addLightingUI();
	void removeLightingUI();

public:
	PU_Rotate();
	

	//virtual char* getName(){ return "Rotate Power-Up"; }

	//return whether or not the player can move after using his power up
	//returns MOVE if movement is not "baked" into the power up
	//must send the input pointer and player who's turn it is
	virtual int Execute(Input*, Player*, Text*);
};